package org.example.javase.modifier;

/**
 * @ClassName StaticFinalTest1
 * @Description 类在未加载的情况下也能引用其静态常量信息，原因是因为常量值存在JVM的常量区中，在类不加载时即可访问
 * 但是不能说所有的静态常用访问都不需要类的加载，这里还要判断这个常量是否属于“编译期常量”，即在编译期即可确定常量值。如果常量值必须在运行时才能确定，如常量值是一个随机值，也会引起类的加载
 * @Author LB
 * @Date 2021/5/14 11:07
 * @Version 1.0
 **/
public class StaticFinalTest1
{
    public static void main(String[] args) {
        System.out.println(StaticFinalTest.FINAL_VARIABLE);
        System.out.println(StaticFinalTest.static_variable);

        /*
            静态常量加载...
            Test 初始化加载...
            null
         */
    }
}


class StaticFinalTest{

    static {
        System.out.println("Test 初始化加载...");
    }
    public static String static_variable;
    public static final String FINAL_VARIABLE="静态常量加载...";

}